<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Promise all</title>
</head>
<body>
<p>promise.all接收一个数组，每个元素需要是一个promise对象，返回一个新的promise对象</p>
<p>新的promise对象状态，由数组中的promise对象状态组成</p>
<p>promise.race跟promise.all方法一样，不过状态会根据数组中的第一个promise对象改变而改变</p>
<script>
  const p1 = new Promise((resolve, reject) => {
    resolve('hello');
  })
      .then(result => result)
      .catch(e => e);

  const p2 = new Promise((resolve, reject) => {
    throw new Error('报错了');
  })
      .then(result => result)
      .catch(e => e);

  Promise.all([p1, p2])
      .then(result => console.log(result))
      .catch(e => console.log(e));
</script>
</body>
</html>